package com.fzy.leetcode.editor.cn;
//2023-03-17 15:03:51
//在一个数组 nums 中除一个数字只出现一次之外，其他数字都出现了三次。请找出那个只出现一次的数字。 
//
// 
//
// 示例 1： 
//
// 输入：nums = [3,4,3,3]
//输出：4
// 
//
// 示例 2： 
//
// 输入：nums = [9,1,7,9,7,9,7]
//输出：1 
//
// 
//
// 限制： 
//
// 
// 1 <= nums.length <= 10000 
// 1 <= nums[i] < 2^31 
// 
//
// 
//
// Related Topics 位运算 数组 👍 426 👎 0

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

class ShuZuZhongShuZiChuXianDeCiShuIiLcof {
    public static void main(String[] args) {
        //创建该题目的对象方便调用
        Solution solution = new ShuZuZhongShuZiChuXianDeCiShuIiLcof().new Solution();
    }
    //leetcode submit region begin(Prohibit modification and deletion)
class Solution {
    public int singleNumber(int[] nums) {
        Map<Integer,Integer> hashmap = new HashMap<>();
        int n = nums.length;
        for(int i = 0;i<n;i++){
            hashmap.put(nums[i],hashmap.getOrDefault(nums[i],0)+1);
        }
        List<Integer> list = new ArrayList<>();
        for(int i = 0;i<n;i++){
            if(hashmap.get(nums[i]) == 1){
                return nums[i];
            }
        }
        return 0;
//        int[] ans = new int[list.size()];
//
//        for(int i = 0;i<list.size();i++){
//            ans[i] = list.get(i);
//        }
//        return list.get();
    }
}
//leetcode submit region end(Prohibit modification and deletion)

}